# import numpy as np
#
# int_array = np.array([1, 2, 3, 4, 5])
# str_array = np.array(['张三', '李四', '王五'])
#
# # 创建列表
# list = [1, 2, 3, 4, 5]
#
# # 创建一个不同类型的列表
# list1 = [1, '张三', 2.0, True]
#
# # 从range对象创建列表
# list2 = list(range(1, 10)) # [1, 2, 3, 4, 5, 6, 7, 8, 9]
#
# # 从字符串中创建列表
# list3 = list('hello world') # ['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']·
#
# # 获取列表中的第2个到第4个元素
# list4 = list[1:4] # [2, 3, 4]
#
# # 每隔一个元素去一个
# list5 = list[::2] # [1, 3, 5]

# # 创建一个字典
# dict = {'name': '张三', 'age': 18, 'sex': '男'}
# print(dict) # {'name': '张三', 'age': 18, 'sex': '男'}
#
# # 访问字典元素
# print(dict['name']) # 张三
# print(dict.get('name')) # 张三
# print(dict.get('hobby','Not Found'))  # Not Found
#
# # 尝试访问不存在的键会抛出异常 KeyError: 'sex'
# print(dict['hobby'])
#
# # 修改字典的值
# dict['name'] = '王五'
# print(dict) # {'name': '王五', 'age': 18, 'sex': '男'}
#
# # 添加字典的元素
# dict['hobby'] = 'football'
# print(dict) # {'name': '王五', 'age': 18, 'sex': '男', 'hobby': 'football'}
#
# # 删除字典的元素
# del dict['hobby']
# print(dict)
#
#
# # keys()：返回字典中所有的键（输出的是视图对象，并不是列表）
# print(dict.keys()) # dict_keys(['name', 'age', 'sex'])
#
# # values()：返回字典中所有的值（输出的是视图对象，并不是列表）
# print(dict.values()) # dict_values(['王五', 18, '男'])
#
# # items()：返回字典中所有的键值对（输出的是视图对象，并不是列表）
# print(dict.items()) # dict_items([('name', '王五'), ('age', 18), ('sex', '男')])
#
# # update()：使用另一个字典的键值对更新当前字典
# dict.update({'name': '张三', 'age': 18, 'sex': '男'})
# print(dict) # {'name': '张三', 'age': 18, 'sex': '男'}

# # 创建一个包含不同类型元素的元组
# tuple1 = (1, 'hello', 3.14, True)
# print(tuple1)  # 输出: (1, 'hello', 3.14, True)
#
# # 只有一个元素的元组
# tuple2 = (1,)
# print(tuple2)
#
# # 访问元组中的元素
# print(tuple1[0])  # 输出: 1
#
# # 切片操作
# sub_tuple = tuple1[1:3]  # 获取索引1到2元素
# print(sub_tuple)  # 输出: ('hello', 3.14)
#
# # 元组可以包括列表（可变的），外部改变了列表，但是元组的结构不变
# # 创建一个包含不同类型元素的元组
# tuple1 = (1, 'hello', 3.14, [1, 2, 3])
#
# tuple1[3].pop(1)
#
# print(tuple1)

# # 使用大括号创建集合
# set1 = {1, 2, 3, 4}
#
# # 使用 set() 函数创建集合
# set2 = set([1, 2, 2, 3, 4])  # 注意，重复的2只会被存储一次
#
# print(set1)  # 输出：{1, 2, 3, 4}
# print(set2)  # 输出：{1, 2, 3, 4}
#
# set1 = {1, 2, 3}
#
# # 添加元素
# set1.add(4)
# print(set1)  # 输出：{1, 2, 3, 4}
#
# # 删除元素
# set1.remove(2)
# print(set1)  # 输出：{1, 3}
#
# # 判断元素是否存在
# print(3 in set1)  # 输出 True
#
# # 集合的长度
# print(len(set1))  # 输出：3

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}

# 交集
print(set1 & set2)  # 输出：{3, 4}

# 并集
print(set1 | set2)  # 输出：{1, 2, 3, 4, 5, 6}

# 差集
print(set1 - set2)  # 输出：{1, 2}

# 对称差集
print(set1 ^ set2)  # 输出：{1, 2, 5, 6}